GNU Emacs NEWS -- history of user-visible changes.

Copyright (C) 2010 Free Software Foundation, Inc.
See the end of the file for license conditions.

Please send Emacs bug reports to bug-gnu-emacs@gnu.org.
If possible, use M-x report-emacs-bug.

This file is about changes in Emacs version 24.

See files NEWS.23, NEWS.22, NEWS.21, NEWS.20, NEWS.19, NEWS.18,
and NEWS.1-17 for changes in older Emacs versions.

You can narrow news to a specific version by calling `view-emacs-news'
with a prefix argument or by typing C-u C-h C-n.


Temporary note:
 +++ indicates that the appropriate manual has already been updated.
 --- means no change in the manuals is called for.
When you add a new item, please add it without either +++ or ---
so we will look at it and add it to the manual.


* Installation Changes in Emacs 24.1

---
** There are new configure options:
--with-mmdf, --with-mail-unlink, --with-mailhost.
These provide no new functionality, they just remove the need to edit
lib-src/Makefile by hand in order to use the associated features.


* Startup Changes in Emacs 24.1


* Changes in Emacs 24.1

** auto-mode-case-fold is now enabled by default.

+++
** Emacs now supports display and editing of bidirectional text.
Warning: This is still very much experimental!  The existing support
is minimal, and when it's turned on (see below), many features are
likely to give unexpected results, or break, or even crash!  Use at
your own risk!

See the node "Bidirectional Editing" in the Emacs Manual for some
initial documentation.

To turn this on in any given buffer, set the buffer-local variable
`bidi-display-reordering' to a non-nil value.  The default is nil.

The buffer-local variable `bidi-paragraph-direction', if non-nil,
forces each paragraph in the buffer to have its base direction
according to the value of this variable.  Possible values are
`right-to-left' and `left-to-right'.  If the value is nil (the
default), Emacs determines the base direction of each paragraph from
its text, as specified by the Unicode Bidirectional Algorithm.

Reordering of bidirectional text for display in Emacs is a "Full
bidirectionality" class implementation of the Unicode Bidirectional
Algorithm.

** GTK scroll-bars are now placed on the right by default.
Use `set-scroll-bar-mode' to change this.

** Lucid menus can display antialiased fonts if Emacs is build with Xft.

** New scrolling commands `scroll-up-command' and `scroll-down-command'
(bound to [next] and [prior]) does not signal errors at top/bottom
of buffer at first key-press (instead moves to top/bottom of buffer).

** New scrolling commands `scroll-up-line' and `scroll-down-line'
scroll a line instead of full screen.


* Editing Changes in Emacs 24.1


* Changes in Specialized Modes and Packages in Emacs 24.1

** mpc.el: Can use pseudo tags of the form tag1|tag2 as a union of two tags.
** Customize

*** Customize buffers now contain a search field.
The search is performed using `customize-apropos'.
To turn off the search field, set custom-search-field to nil .

*** Custom options now start out hidden if at their default values.
Use the arrow to the left of the option name to toggle visibility.

*** custom-buffer-sort-alphabetically now defaults to t.

*** The color widget now has a "Choose" button, which allows you to
choose a color via list-colors-display.

** VC and related modes

*** New VC commands: vc-log-incoming and vc-log-outgoing.

*** vc-dir for Bzr supports viewing shelve contents and shelving snapshots.

*** Special markup can be added to log-edit buffers.

**** For Bzr, adding an
Author: NAME
line will add "--author NAME" to the "bzr commit" command.

**** For Git, adding an
Author: NAME
line will add "--author NAME" to the "git commit" command.

**** For Hg, adding an
Author: NAME
line will add "--user NAME" to the "hg commit" command.

** Directory local variables can apply to file-less buffers.
For example, adding "(diff-mode . ((mode . whitespace)))" to your
.dir-locals.el file, will turn on `whitespace-mode' for *vc-diff*
buffers.

** s-region.el is now declared obsolete, superceded by shift-select-mode
enabled by default in 23.1.

** gdb-mi

*** GDB User Interface migrated to GDB Machine Interface and now
supports multithread non-stop debugging and debugging of several
threads simultaneously.


* New Modes and Packages in Emacs 24.1

** secrets.el is an implementation of the Secret Service API, an
interface to password managers like GNOME Keyring or KDE Wallet.  The
Secret Service API requires D-Bus for communication.


* Incompatible Lisp Changes in Emacs 24.1


* Lisp changes in Emacs 24.1

** New completion style `substring'.

** Image API

*** When the image type is one of listed in `image-animated-types'
and the number of sub-images in the image is more than one, then the
new function `create-animated-image' creates an animated image where
sub-images are displayed successively with the duration defined by
`image-animate-max-time' and the delay between sub-images defined
by the Graphic Control Extension of the image.

*** `image-extension-data' is renamed to `image-metadata'.

** Progress reporters can now "spin".
The MIN-VALUE and MAX-VALUE arguments of `make-progress-reporter' can
now be nil, or omitted.  This makes a "non-numeric" reporter.  Each
time you call `progress-reporter-update' on that progress reporter,
with a nil or omitted VALUE argument, the reporter message is
displayed with a "spinning bar".


* Changes in Emacs 24.1 on non-free operating systems


----------------------------------------------------------------------
This file is part of GNU Emacs.

GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.


Local variables:
mode: outline
paragraph-separate: "[ 	]*$"
end:
